package org.jeecgframework.web.system.pojo.base;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

import org.codehaus.jackson.annotate.JsonIgnore;
import org.hibernate.annotations.GenericGenerator;

/**   
 * @Title: Entity
 * @Description: 设备ITEM
 * @author onlineGenerator
 * @date 2016-05-25 15:10:22
 * @version V1.0   
 *
 */
@Entity
@Table(name = "zy_es_item", schema = "")
@SuppressWarnings("serial")
public class ZyEsItemEntity implements java.io.Serializable {
	/**主键*/
	private java.lang.String id;
	/**ITEM*/
	private java.lang.String item;
	/**ITEM_DESC*/
	private java.lang.String itemDesc;
	/**型号*/
	private ZyEquipmentTypeEntity type;
	/**使用范围*/
	private java.lang.String scope;
	/**是否返件
	 * 1_是，2_否
	 * */
	private String isReturn;
	/**是否序列号追踪
	 * 1_是，2_否
	 * */
	private String isTrack;
	/**
	 * 中文描述
	 */
	private String describes;

	/**创建人名称*/
	private java.lang.String createName;
	/**创建人登录名称*/
	private java.lang.String createBy;
	/**创建日期*/
	private java.util.Date createDate;
	/**更新人名称*/
	private java.lang.String updateName;
	/**更新人登录名称*/
	private java.lang.String updateBy;
	/**更新日期*/
	private java.util.Date updateDate;


	/**
	 * 中文描述
	 * @return
	 */
	@Column(name ="describes")
	public String getDescribes() {
		return describes;
	}

	public void setDescribes(String describes) {
		this.describes = describes;
	}

	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  主键
	 */
	@Id
	@GeneratedValue(generator = "paymentableGenerator")
	@GenericGenerator(name = "paymentableGenerator", strategy = "uuid")
	@Column(name ="ID",nullable=false,length=36)
	public java.lang.String getId(){
		return this.id;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  主键
	 */
	public void setId(java.lang.String id){
		this.id = id;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  ITEM
	 */
	@Column(name ="ITEM",nullable=true,length=32)
	public java.lang.String getItem(){
		return this.item;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  ITEM
	 */
	public void setItem(java.lang.String item){
		this.item = item;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  型号
	 */
	@ManyToOne(cascade=CascadeType.DETACH,fetch=FetchType.EAGER)
    @JoinColumn(name="TYPE")
	@JsonIgnore
	public ZyEquipmentTypeEntity getType() {
		return type;
	}
	@JsonIgnore
	public void setType(ZyEquipmentTypeEntity type) {
		this.type = type;
	}

	/*
	* 是否返件
	* */
	@Column(name ="IS_RETURN",nullable=true,length=32)
	public String getIsReturn() {
		return isReturn;
	}

	public void setIsReturn(String isReturn) {
		this.isReturn = isReturn;
	}


	/*
	* 是否序列号追踪
	* */
	@Column(name ="IS_TRACK",nullable=true,length=32)
	public String getIsTrack() {
		return isTrack;
	}

	public void setIsTrack(String isTrack) {
		this.isTrack = isTrack;
	}

	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  创建人名称
	 */
	@Column(name ="CREATE_NAME",nullable=true,length=50)
	public java.lang.String getCreateName(){
		return this.createName;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  创建人名称
	 */
	public void setCreateName(java.lang.String createName){
		this.createName = createName;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  创建人登录名称
	 */
	@Column(name ="CREATE_BY",nullable=true,length=50)
	public java.lang.String getCreateBy(){
		return this.createBy;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  创建人登录名称
	 */
	public void setCreateBy(java.lang.String createBy){
		this.createBy = createBy;
	}
	/**
	 *方法: 取得java.util.Date
	 *@return: java.util.Date  创建日期
	 */
	@Column(name ="CREATE_DATE",nullable=true,length=20)
	public java.util.Date getCreateDate(){
		return this.createDate;
	}

	/**
	 *方法: 设置java.util.Date
	 *@param: java.util.Date  创建日期
	 */
	public void setCreateDate(java.util.Date createDate){
		this.createDate = createDate;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  更新人名称
	 */
	@Column(name ="UPDATE_NAME",nullable=true,length=50)
	public java.lang.String getUpdateName(){
		return this.updateName;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  更新人名称
	 */
	public void setUpdateName(java.lang.String updateName){
		this.updateName = updateName;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  更新人登录名称
	 */
	@Column(name ="UPDATE_BY",nullable=true,length=50)
	public java.lang.String getUpdateBy(){
		return this.updateBy;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  更新人登录名称
	 */
	public void setUpdateBy(java.lang.String updateBy){
		this.updateBy = updateBy;
	}
	/**
	 *方法: 取得java.util.Date
	 *@return: java.util.Date  更新日期
	 */
	@Column(name ="UPDATE_DATE",nullable=true,length=20)
	public java.util.Date getUpdateDate(){
		return this.updateDate;
	}

	/**
	 *方法: 设置java.util.Date
	 *@param: java.util.Date  更新日期
	 */
	public void setUpdateDate(java.util.Date updateDate){
		this.updateDate = updateDate;
	}

	/**
	 * @return the itemDesc
	 */
	@Column(name ="item_desc",nullable=true,length=100)
	public java.lang.String getItemDesc() {
		return itemDesc;
	}

	/**
	 * @param itemDesc the itemDesc to set
	 */
	public void setItemDesc(java.lang.String itemDesc) {
		this.itemDesc = itemDesc;
	}

	/**
	 * @return the scope
	 */
	@Column(name ="scope",nullable=true,length=100)
	public java.lang.String getScope() {
		return scope;
	}

	/**
	 * @param scope the scope to set
	 */
	public void setScope(java.lang.String scope) {
		this.scope = scope;
	}
	
	
	
}
